草庐IT

C++::Boost::Regex 迭代子匹配

全部标签

javascript - 为什么 RegEx.test 会在后续调用中更改结果?

这个问题在这里已经有了答案:WhydoesaRegExpwithglobalflaggivewrongresults?(7个答案)关闭7年前。为什么以下从true变为false;varr=/e/gi;r.test('e');//truer.test('e');//false然后继续切换true,false,true,false......

javascript - Regex.test() 给出真假顺序?

任何人都可以解释一下,为什么本地Regex变量和非本地Regex变量有不同的输出。varregex1=/a|b/g;functionisAB1(){returnregex1.test('a');}console.log(isAB1());//trueconsole.log(isAB1());//falseconsole.log(isAB1());//trueconsole.log(isAB1());//falsefunctionisAB2(){varregex2=/a|b/g;returnregex2.test('a');}console.log(isAB2());//truecons

javascript - for循环(每次迭代都会产生一个 promise )完成后如何返回单个 promise ?

我的promise返回代码有问题,我有一个函数getTagQuotes,它包含一个for循环,它可以多次调用API以将数据返回到数组中。我的代码是如何开始的://Iftherearetags,thenwaitforpromisehere:if(tags.length>0){//SettingpromisevartogetTagQuotes:varpromise=getTagQuotes(tags).then(function(){console.log('promise=',promise);//Thisarrayshouldcontain1-3tags:console.log('tw

javascript - 正则表达式匹配 Markdown 链接

我有一个带有markdown的字符串。我正在尝试使用正则表达式去除所有Markdown,但在匹配链接时遇到问题。这是我得到的结果:functionstripMarkdown(text){varstr=String(text).replace(/(__|\*|\#)/gm,'');returnstr;}vartestStr='#Thisisthetitle.##Thisisthesubtitle.**sometext**__somemoretext__.[linkhere](http://google.com)'stripMarkdown(testStr);所以我相信上面的内容会去除除链

javascript - 如何以编程方式处理英文缩写 [Regex, JS, Ruby]

我正在捕获自然语言用户输入,我需要根据预定义的“正确”版本检查它。这是微不足道的,但我不确定如何处理英语中收缩的变化。假设我期待句子I'mpositiveyoudon'tknowwhatyou'redoing.匹配需要精确,但我不想将用户锁定在一种变体,因为那样很快就会令人沮丧。那么,我是否应该手动输入该句子的所有可能变体作为有效匹配项?像这样:"I'mpositiveyoudon'tknowwhatyou'redoing.""Iampositiveyoudon'tknowwhatyou'redoing.""Iampositiveyoudonotknowwhatyou'redoing.

javascript - 匹配所有以四个空格为前缀的行

我试图用pre标签包装所有以4个空格字符为前缀的行。这是我目前所拥有的Text=Text.replace(newRegExp("({4}.+?)","g"),"$1\n");Text=Text.replace(newRegExp("({4}.+?)\n","g"),"$1");它可以工作,但它会将每一行都包装在pre中。我需要它来包裹整个街区。 最佳答案 也许这样的事情会奏效?它连续匹配多行..({4}.*(\n{4}.*)*)\n 关于javascript-匹配所有以四个空格为前缀的行

javascript - 数字、字母 block 的正则表达式模式匹配

我有一些像这样的字符串aa11b2sabc1sff3a1b1sdd2等等……我需要将这些字符串更改为这些aa11b2sabc1sff3a1b1sdd2简单地说..我需要在每个(数字/字母s)block之间添加一个空格 最佳答案 varstr='aa11b2s'.replace(/([a-z]+|\d+)(?!$)/gi,'$1'); 关于javascript-数字、字母block的正则表达式模式匹配,我们在StackOverflow上找到一个类似的问题: ht

javascript - JavaScript 中的正则表达式 - 匹配类似 "ABC12"的字符串

这个问题不太可能帮助任何future的访问者;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况有关,这些情况并不普遍适用于互联网的全局受众。为了帮助使这个问题更广泛地适用,visitthehelpcenter.关闭10年前。如何在JavaScript中使用正则表达式匹配下面的字符串?总共有5个字符前3个字符为大写最后2个字符只是数字我得到了这个模式,[A-Z]{3}[0-9]{2},但它似乎仍然缺少一些东西。

javascript - 正则表达式仅匹配字符或空格或两个单词之间的一个点,不允许使用双空格

我需要正则表达式方面的帮助。我需要一个JavaScript表达式,它只允许字符或空格或两个单词之间的一个点,不允许双空格。我正在用这个varregexp=/^([a-zA-Z]+\s)*[a-zA-Z]+$/;但它不起作用。示例1.hellospace.hello-notallowed2.spacehellospace-notallowed 最佳答案 试试这个:^(\s?\.?[a-zA-Z]+)+$编辑1/^(\s{0,1}\.{0,1}[a-zA-Z]+)+$/.test('space..hellospace')false/^(

javascript - 捕获一个字符串,然后匹配以该字符串开头的所有其他单词

我有一个包含80,000多个单词的列表,每个单词用换行符分隔。我需要匹配每个包含较小单词前缀的单词。例如,bald我将在sublimetext中使用查找和替换,因此我希望能够使用“”替换所有匹配项,从而将它们从我的列表中删除。好的,这是背景故事:我的单词表基本上是英语词典的删节版。使用正则表达式,我已经能够删除所有专有名词、缩写、带重音字符的单词以及所有长度小于4个字母的单词。我将在我正在制作的javascript文字游戏中使用这本词典。(是的,这是的作业,但它不是学分,而且作业很简单,可以制作一个简单的javascript游戏。我的游戏逻辑有效,我可以编辑手动单词列表,但我希望它在2